package com.ytjj.qmyx.admin.mapper;

import com.ytjj.qmyx.admin.model.ImCustomerLabel;
import com.ytjj.qmyx.admin.model.ImCustomerLabelExample;
import java.util.List;

import com.ytjj.qmyx.admin.model.dto.ImCustomerLabelDto;
import org.apache.ibatis.annotations.Param;

public interface ImCustomerLabelMapper {
    long countByExample(ImCustomerLabelExample example);

    int deleteByExample(ImCustomerLabelExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(ImCustomerLabel record);

    int insertSelective(ImCustomerLabel record);

    List<ImCustomerLabel> selectByExample(ImCustomerLabelExample example);

    ImCustomerLabel selectByPrimaryKey(Integer id);

    ImCustomerLabel selectOne(@Param("id") Byte id);

    int updateByExampleSelective(@Param("record") ImCustomerLabel record, @Param("example") ImCustomerLabelExample example);

    int updateByExample(@Param("record") ImCustomerLabel record, @Param("example") ImCustomerLabelExample example);

    int updateByPrimaryKeySelective(ImCustomerLabel record);

    int updateByPrimaryKey(ImCustomerLabel record);

    int updateLabel(@Param("id") Integer id, @Param("labelName") String labelName,@Param("labelColour") String labelColour);

    int upLabelUseNum(@Param("userLabel") Byte userLabel);

    int downLabelUseNum(@Param("userLabel") Byte userLabel);

    List<ImCustomerLabelDto> selectList();

    List<ImCustomerLabelDto> queryLabel();

    ImCustomerLabel selectByName(@Param("labelName") String name);
}